In current systems, all logical switches connected to a distributed logical router (DLR) (e.g., a tenant logical router (TLR) or provider logical router (PLR)) must be configured on each host machine implementing the distributed logical router. Each machine implementing the distributed logical router reports a tunnel endpoint (e.g., a virtual extensible local area network (VXLAN) tunnel endpoint (VTEP)) to a central control plane (CCP) (e.g., a controller or set of controllers). For a current ARP implementation, each host machine is required to report a <logical switch, VTEP> association (or mapping) for all logical switches connected to the distributed logical router even if the host machine is not hosting any compute nodes connected to a particular logical switch.
In a large-scale virtualized environment, there may be hundreds or even thousands of host machines implementing a same distributed logical router. If the DLR connects to 1000 logical switches, and there are 1000 machines, each machine will have to report 1000 <logical switch, VTEP> associations (or mappings) for a total of 1 million <logical switch, VTEP> associations (or mappings). If each association between a logical switch and a VTEP requires 10 bytes to report, the CCP will have to send ˜1 million entries to each of the 1000 host machines for a total of approximately 10 GB of data. Such a large amount of data to send in addition to other control messages is a significant burden on the CCP resources. Each host machine will also receive approximately 10 MB of <logical switch, VTEP> association data which is a significant amount of memory for implementing the distributed logical router.
Additionally, because each VTEP is associated with each logical switch even though the VTEP is not attached to compute nodes belonging to the logical switch it will receive unnecessary broadcast, unknown unicast, and multicast (BUM) traffic.